﻿Public Class SFDL_File

    Private Description As String = String.Empty
    Private Uploader As String = String.Empty
    Private FileVersion As Integer = 0
    Private Encryptet As Boolean = False

    Private ConnectionInfo As New ConnectionInfo
    Private FileInfoList As New List(Of FileInfo)

    Private MaxDownloadThreads As Integer = 0

    ''' <summary>
    ''' Gibt die Beschreibung der SFDL Datei an.
    ''' </summary>
    Public Property GetSetDescription As String
        Set(value As String)
            Description = value
        End Set
        Get
            Return Description
        End Get
    End Property
    ''' <summary>
    ''' Gibt den Upper an
    ''' </summary>
    Public Property GetsetUploader As String
        Set(value As String)
            Uploader = value
        End Set
        Get
            Return Uploader
        End Get
    End Property
    ''' <summary>
    ''' Gibt die SFDL Datei Version zurück.
    ''' </summary>
    ''' <remarks>Nur für interene Zwecke. Wird noch nicht verwendet.</remarks>
    Public Property GetSetFileVersion As Integer
        Set(value As Integer)
            FileVersion = value
        End Set
        Get
            Return FileVersion
        End Get
    End Property
    Public Property GetSetEncryptet As Boolean
        Set(value As Boolean)
            Encryptet = value
        End Set
        Get
            Return Encryptet
        End Get
    End Property
    ''' <summary>
    ''' Gibt die FTP Verbindungsinformationen zurück.
    ''' </summary>
    Public Property GetSetConnectionInfo As ConnectionInfo
        Set(value As ConnectionInfo)
            ConnectionInfo = value
        End Set
        Get
            Return ConnectionInfo
        End Get
    End Property
    ''' <summary>
    ''' Gibt die Liste mit allen Dateien zurück.
    ''' </summary>
    Public Property GetSetFileInfoList As List(Of FileInfo)
        Set(value As List(Of FileInfo))
            FileInfoList = value
        End Set
        Get
            Return FileInfoList
        End Get
    End Property
    ''' <summary>
    ''' Gibt die Maximale Thread Anzahl zurück.
    ''' </summary>
    Public Property GetSetMaxDownloadThread As Integer
        Set(value As Integer)
            MaxDownloadThreads = value
        End Set
        Get
            Return MaxDownloadThreads
        End Get
    End Property



End Class
